package animator.phantom.controller;

/*
    Copyright Janne Liljeblad

    This file is part of Phantom2D.

    Phantom2D is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    Phantom2D is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with Phantom2D.  If not, see <http://www.gnu.org/licenses/>.
*/

import java.io.File;
import java.util.*;

//--- Class used to poll sze of a file at given inter wall.
public class FileSizePoll extends Timer
{
	private PollTask pollEvent;
	File file;
	private long pollDelay;
	private static final long INITIAL_POLL_DELAY = 300;

	public FileSizePoll( File file, long pollDelay )
	{
		this.file = file;
		this.pollDelay = pollDelay;
	}

	public void start()
	{
		pollEvent = new PollTask();
		schedule( pollEvent, INITIAL_POLL_DELAY, pollDelay );
	}

	public void stop()
	{
		cancel();
	}

	class PollTask extends TimerTask
	{
		public PollTask(){}
		
		public void run()
		{
			if( file.exists() )
				GUIComponents.renderWindow.getPanel().displayMovieFileSize( (int) file.length() );
		}
	}
	
}//end class
